<?php

define("RUTA_MP3", "/home/olmos/NetBeansProjects/Ejercicios/files");

Class mp3
{
    private $_Path = NULL;
    private $_Artista = NULL;
    private $_Titol = NULL;
    private $_Pista = NULL;
    private $_Any = NULL;
    private $_Album = NULL;
    

    /* PRIVADAS */


    private function comprovar_Path($Path) {
        //if (!preg_match('/\w/', $Path)) throw new exception("ERROR: Fitxer");     
    }
    
    private function comprovar_Artista($Artista) {
        if (!preg_match('/\w/', $Artista)) throw new exception("ERROR: Artista"); 
        
    }
    
    private function comprovar_Titol($Titol) {
        if (!preg_match('/\w/', $Titol)) throw new exception("ERROR: Nom Titol"); 
        
    }
    
    private function comprovar_Pista($Pista) {
        if (!preg_match('/[0-9]{1,3}/', $Pista)) throw new exception("ERROR: Nom Pista");
        
    }
    
    private function comprovar_Any($Any) {
        if (!preg_match('/[0-9]{4}/', $Any)) throw new exception("ERROR: Any");
        
        
    }
    
    private function comprovar_Album($Album) {
        if (!preg_match('/\w/', $Album)) throw new exception("ERROR: Nom Album");
        
    }






    /* PUBLICAS */
    
    // Constructora
    public function __construct($Artista, $Titol, $Pista, $Any, $Album) {
        $this->set_Artista($Artista);
        $this->set_Titol($Titol);
        $this->set_Pista($Pista);
        $this->set_Any($Any); 
        $this->set_Album($Album);
    }
    
    
    // GETs
    public function get_Path() {
        return $this->_Path;
    }
    
    public function get_Artista() {
        return $this->_Artista;
    }
    
    public function get_Titol() {
        return $this->_Titol;
    }
    
    public function get_Pista() {
        return $this->_Pista;
    }

    public function get_Any() {
        return $this->_Any;
    }
    
    public function get_Album() {
        return $this->_Album;
    }
    
    //SETs

    public function set_Path($Path) {
        $this->comprovar_Path($Path);
        $this->_Path = $Path;
    }

   
    public function set_Artista($Artista) {
        $this->comprovar_Artista($Artista);
        $this->_Artista = $Artista;
    }

   

    public function set_Titol($Titol) {
        $this->comprovar_Titol($Titol);
        $this->_Titol = $Titol;
    }

   

    public function set_Pista($Pista) {
        $this->comprovar_Pista($Pista);
        $this->_Pista = $Pista;
    }

    

    public function set_Any($Any) {
        $this->comprovar_Any($Any);
        $this->_Any = $Any;
    }


    public function set_Album($Album) {
        $this->comprovar_Album($Album);
        $this->_Album = $Album;
    }


}

?>
